package com.eshop.modules.cart.vo;

import com.eshop.serializer.DoubleSerializer;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.eshop.modules.product.vo.StoreProductQueryVo;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.annotations.ApiModel;
import java.io.Serializable;

@ApiModel(value = "YxStoreCartQueryVo对象", description = "购物车表查询参数")
public class StoreCartQueryVo implements Serializable
{
    private static final long serialVersionUID = 1L;
    @ApiModelProperty("购物车表ID")
    private Long id;
    @ApiModelProperty("用户ID")
    private Long uid;
    @ApiModelProperty("类型")
    private String type;
    @ApiModelProperty("商品ID")
    private Long productId;
    @ApiModelProperty("商品属性")
    private String productAttrUnique;
    @ApiModelProperty("商品数量")
    private Integer cartNum;
    @ApiModelProperty("拼团id")
    private Long combinationId;
    @ApiModelProperty("秒杀产品ID")
    private Long seckillId;
    @ApiModelProperty("砍价id")
    private Long bargainId;
    @ApiModelProperty("商品信息")
    private StoreProductQueryVo productInfo;
    @ApiModelProperty("成本价")
    @JsonSerialize(using = DoubleSerializer.class)
    private Double costPrice;
    @ApiModelProperty("真实价格")
    @JsonSerialize(using = DoubleSerializer.class)
    private Double truePrice;
    @ApiModelProperty("真实库存")
    private Integer trueStock;
    @JsonSerialize(using = DoubleSerializer.class)
    @ApiModelProperty("vip真实价格")
    private Double vipTruePrice;
    @ApiModelProperty("唯一id")
    private String unique;
    @ApiModelProperty("是否评价")
    private Integer isReply;
    
    public Long getId() {
        return this.id;
    }
    
    public Long getUid() {
        return this.uid;
    }
    
    public String getType() {
        return this.type;
    }
    
    public Long getProductId() {
        return this.productId;
    }
    
    public String getProductAttrUnique() {
        return this.productAttrUnique;
    }
    
    public Integer getCartNum() {
        return this.cartNum;
    }
    
    public Long getCombinationId() {
        return this.combinationId;
    }
    
    public Long getSeckillId() {
        return this.seckillId;
    }
    
    public Long getBargainId() {
        return this.bargainId;
    }
    
    public StoreProductQueryVo getProductInfo() {
        return this.productInfo;
    }
    
    public Double getCostPrice() {
        return this.costPrice;
    }
    
    public Double getTruePrice() {
        return this.truePrice;
    }
    
    public Integer getTrueStock() {
        return this.trueStock;
    }
    
    public Double getVipTruePrice() {
        return this.vipTruePrice;
    }
    
    public String getUnique() {
        return this.unique;
    }
    
    public Integer getIsReply() {
        return this.isReply;
    }
    
    public void setId(final Long id) {
        this.id = id;
    }
    
    public void setUid(final Long uid) {
        this.uid = uid;
    }
    
    public void setType(final String type) {
        this.type = type;
    }
    
    public void setProductId(final Long productId) {
        this.productId = productId;
    }
    
    public void setProductAttrUnique(final String productAttrUnique) {
        this.productAttrUnique = productAttrUnique;
    }
    
    public void setCartNum(final Integer cartNum) {
        this.cartNum = cartNum;
    }
    
    public void setCombinationId(final Long combinationId) {
        this.combinationId = combinationId;
    }
    
    public void setSeckillId(final Long seckillId) {
        this.seckillId = seckillId;
    }
    
    public void setBargainId(final Long bargainId) {
        this.bargainId = bargainId;
    }
    
    public void setProductInfo(final StoreProductQueryVo productInfo) {
        this.productInfo = productInfo;
    }
    
    public void setCostPrice(final Double costPrice) {
        this.costPrice = costPrice;
    }
    
    public void setTruePrice(final Double truePrice) {
        this.truePrice = truePrice;
    }
    
    public void setTrueStock(final Integer trueStock) {
        this.trueStock = trueStock;
    }
    
    public void setVipTruePrice(final Double vipTruePrice) {
        this.vipTruePrice = vipTruePrice;
    }
    
    public void setUnique(final String unique) {
        this.unique = unique;
    }
    
    public void setIsReply(final Integer isReply) {
        this.isReply = isReply;
    }
    
    @Override
    public boolean equals(final Object o) {
        if (o == this) {
            return true;
        }
        if (!(o instanceof StoreCartQueryVo)) {
            return false;
        }
        final StoreCartQueryVo other = (StoreCartQueryVo)o;
        if (!other.canEqual(this)) {
            return false;
        }
        final Object this$id = this.getId();
        final Object other$id = other.getId();
        Label_0065: {
            if (this$id == null) {
                if (other$id == null) {
                    break Label_0065;
                }
            }
            else if (this$id.equals(other$id)) {
                break Label_0065;
            }
            return false;
        }
        final Object this$uid = this.getUid();
        final Object other$uid = other.getUid();
        Label_0102: {
            if (this$uid == null) {
                if (other$uid == null) {
                    break Label_0102;
                }
            }
            else if (this$uid.equals(other$uid)) {
                break Label_0102;
            }
            return false;
        }
        final Object this$productId = this.getProductId();
        final Object other$productId = other.getProductId();
        Label_0139: {
            if (this$productId == null) {
                if (other$productId == null) {
                    break Label_0139;
                }
            }
            else if (this$productId.equals(other$productId)) {
                break Label_0139;
            }
            return false;
        }
        final Object this$cartNum = this.getCartNum();
        final Object other$cartNum = other.getCartNum();
        Label_0176: {
            if (this$cartNum == null) {
                if (other$cartNum == null) {
                    break Label_0176;
                }
            }
            else if (this$cartNum.equals(other$cartNum)) {
                break Label_0176;
            }
            return false;
        }
        final Object this$combinationId = this.getCombinationId();
        final Object other$combinationId = other.getCombinationId();
        Label_0213: {
            if (this$combinationId == null) {
                if (other$combinationId == null) {
                    break Label_0213;
                }
            }
            else if (this$combinationId.equals(other$combinationId)) {
                break Label_0213;
            }
            return false;
        }
        final Object this$seckillId = this.getSeckillId();
        final Object other$seckillId = other.getSeckillId();
        Label_0250: {
            if (this$seckillId == null) {
                if (other$seckillId == null) {
                    break Label_0250;
                }
            }
            else if (this$seckillId.equals(other$seckillId)) {
                break Label_0250;
            }
            return false;
        }
        final Object this$bargainId = this.getBargainId();
        final Object other$bargainId = other.getBargainId();
        Label_0287: {
            if (this$bargainId == null) {
                if (other$bargainId == null) {
                    break Label_0287;
                }
            }
            else if (this$bargainId.equals(other$bargainId)) {
                break Label_0287;
            }
            return false;
        }
        final Object this$costPrice = this.getCostPrice();
        final Object other$costPrice = other.getCostPrice();
        Label_0324: {
            if (this$costPrice == null) {
                if (other$costPrice == null) {
                    break Label_0324;
                }
            }
            else if (this$costPrice.equals(other$costPrice)) {
                break Label_0324;
            }
            return false;
        }
        final Object this$truePrice = this.getTruePrice();
        final Object other$truePrice = other.getTruePrice();
        Label_0361: {
            if (this$truePrice == null) {
                if (other$truePrice == null) {
                    break Label_0361;
                }
            }
            else if (this$truePrice.equals(other$truePrice)) {
                break Label_0361;
            }
            return false;
        }
        final Object this$trueStock = this.getTrueStock();
        final Object other$trueStock = other.getTrueStock();
        Label_0398: {
            if (this$trueStock == null) {
                if (other$trueStock == null) {
                    break Label_0398;
                }
            }
            else if (this$trueStock.equals(other$trueStock)) {
                break Label_0398;
            }
            return false;
        }
        final Object this$vipTruePrice = this.getVipTruePrice();
        final Object other$vipTruePrice = other.getVipTruePrice();
        Label_0435: {
            if (this$vipTruePrice == null) {
                if (other$vipTruePrice == null) {
                    break Label_0435;
                }
            }
            else if (this$vipTruePrice.equals(other$vipTruePrice)) {
                break Label_0435;
            }
            return false;
        }
        final Object this$isReply = this.getIsReply();
        final Object other$isReply = other.getIsReply();
        Label_0472: {
            if (this$isReply == null) {
                if (other$isReply == null) {
                    break Label_0472;
                }
            }
            else if (this$isReply.equals(other$isReply)) {
                break Label_0472;
            }
            return false;
        }
        final Object this$type = this.getType();
        final Object other$type = other.getType();
        Label_0509: {
            if (this$type == null) {
                if (other$type == null) {
                    break Label_0509;
                }
            }
            else if (this$type.equals(other$type)) {
                break Label_0509;
            }
            return false;
        }
        final Object this$productAttrUnique = this.getProductAttrUnique();
        final Object other$productAttrUnique = other.getProductAttrUnique();
        Label_0546: {
            if (this$productAttrUnique == null) {
                if (other$productAttrUnique == null) {
                    break Label_0546;
                }
            }
            else if (this$productAttrUnique.equals(other$productAttrUnique)) {
                break Label_0546;
            }
            return false;
        }
        final Object this$productInfo = this.getProductInfo();
        final Object other$productInfo = other.getProductInfo();
        Label_0583: {
            if (this$productInfo == null) {
                if (other$productInfo == null) {
                    break Label_0583;
                }
            }
            else if (this$productInfo.equals(other$productInfo)) {
                break Label_0583;
            }
            return false;
        }
        final Object this$unique = this.getUnique();
        final Object other$unique = other.getUnique();
        if (this$unique == null) {
            if (other$unique == null) {
                return true;
            }
        }
        else if (this$unique.equals(other$unique)) {
            return true;
        }
        return false;
    }
    
    protected boolean canEqual(final Object other) {
        return other instanceof StoreCartQueryVo;
    }
    
    @Override
    public int hashCode() {
        final int PRIME = 59;
        int result = 1;
        final Object $id = this.getId();
        result = result * 59 + (($id == null) ? 43 : $id.hashCode());
        final Object $uid = this.getUid();
        result = result * 59 + (($uid == null) ? 43 : $uid.hashCode());
        final Object $productId = this.getProductId();
        result = result * 59 + (($productId == null) ? 43 : $productId.hashCode());
        final Object $cartNum = this.getCartNum();
        result = result * 59 + (($cartNum == null) ? 43 : $cartNum.hashCode());
        final Object $combinationId = this.getCombinationId();
        result = result * 59 + (($combinationId == null) ? 43 : $combinationId.hashCode());
        final Object $seckillId = this.getSeckillId();
        result = result * 59 + (($seckillId == null) ? 43 : $seckillId.hashCode());
        final Object $bargainId = this.getBargainId();
        result = result * 59 + (($bargainId == null) ? 43 : $bargainId.hashCode());
        final Object $costPrice = this.getCostPrice();
        result = result * 59 + (($costPrice == null) ? 43 : $costPrice.hashCode());
        final Object $truePrice = this.getTruePrice();
        result = result * 59 + (($truePrice == null) ? 43 : $truePrice.hashCode());
        final Object $trueStock = this.getTrueStock();
        result = result * 59 + (($trueStock == null) ? 43 : $trueStock.hashCode());
        final Object $vipTruePrice = this.getVipTruePrice();
        result = result * 59 + (($vipTruePrice == null) ? 43 : $vipTruePrice.hashCode());
        final Object $isReply = this.getIsReply();
        result = result * 59 + (($isReply == null) ? 43 : $isReply.hashCode());
        final Object $type = this.getType();
        result = result * 59 + (($type == null) ? 43 : $type.hashCode());
        final Object $productAttrUnique = this.getProductAttrUnique();
        result = result * 59 + (($productAttrUnique == null) ? 43 : $productAttrUnique.hashCode());
        final Object $productInfo = this.getProductInfo();
        result = result * 59 + (($productInfo == null) ? 43 : $productInfo.hashCode());
        final Object $unique = this.getUnique();
        result = result * 59 + (($unique == null) ? 43 : $unique.hashCode());
        return result;
    }
    
    @Override
    public String toString() {
        return "StoreCartQueryVo(id=" + this.getId() + ", uid=" + this.getUid() + ", type=" + this.getType() + ", productId=" + this.getProductId() + ", productAttrUnique=" + this.getProductAttrUnique() + ", cartNum=" + this.getCartNum() + ", combinationId=" + this.getCombinationId() + ", seckillId=" + this.getSeckillId() + ", bargainId=" + this.getBargainId() + ", productInfo=" + this.getProductInfo() + ", costPrice=" + this.getCostPrice() + ", truePrice=" + this.getTruePrice() + ", trueStock=" + this.getTrueStock() + ", vipTruePrice=" + this.getVipTruePrice() + ", unique=" + this.getUnique() + ", isReply=" + this.getIsReply() + ")";
    }
}
